/**
 * VueRouter
 *   是什么：一款Vue官方提供的用于实现路由功能的插件
 *   版本问题：
 *      Vue2.x    VueRouter3.x
 *      Vue3.x    VueRouter4.x
 *
 *   基本步骤：
 *      1. 安装 vue-router
 *        npm install vue-router@3
 *      2. 创建路由器实例对象
 *         编写 src/router/index.js
 *      3. 将路由器实例对象引入到 new Vue ,通过 router 选项
 *
 *   实例化路由器的一些配置项
 *
 *   VueRouter 正确用上之后，会给我们提供两个全局组件
 *     1.RouterView (路由视图)
 *        用于渲染当前url地址匹配上的路由组件的
 *     2.RouterLink (路由链接)
 *        用于渲染超链接（a）的一个组件，实现路由跳转
 *        ？可以自己使用 a 标签来实现路由的跳转嘛?
 *        !可以，但没必要!
 *
 *   VueRouter 两种模式的区别
 *      1. 最直接的区别就是，url地址栏的表现不同，
 *          hash模式有 # 号
 *          history模式没有 # 号，看上去更像标准的url地址，更漂亮
 *      2. 内部实现原理不同
 *          hash模式，监听 hashChange 事件，来处理路由重新匹配
 *          history模式，通过 HTML5 中 history 对象上新增的一些属性和方法来实现的。pushState replaceState onpopstate
 *      3. 上线会不会出现404问题上。
 *          hash模式不会
 *          history模式，会，需要单独的去修改 web 服务（nginx、apache）的相关配置
 *    
 *    Nginx修改配置文件
 *      1. 文件路径   安装目录/conf/nginx.conf
 *      2. 修改如下内容
 *          location / {
                root   html;
                index  index.html index.htm;
                try_files $uri $uri/ /index.html;
            }
        3. 要重启Nginx
            1. 在 Nginx.exe 文件所在目录打开终端
            2. ./nginx.exe -t         测试nginx配置是否有错误
            3. ./nginx.exe -s reload  重启
 */

import Vue from "vue";
import App from "./App.vue";
import router from "./router";

Vue.config.productionTip = false;

new Vue({
  router,
  render: (h) => h(App),
}).$mount("#app");
